package com.example.xbrother.rule.aircondition;

import com.example.xbrother.rule.BaseParam;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import java.util.ArrayList;
import java.util.List;

/**
 * 空调内外机安装位置-参数
 */
@Data
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
public class AirConditionPipeParam extends BaseParam {
    /**
     * 空调内外机垂直距离
     */
    private Double verticalDistance;
    /**
     * 室内机到外机距离（即：所需铜管总长度）
     */
    private Double distanceBetweenOutAndInner;
    /**
     * 空调内外机相对位置(eg. 正落差、负落差)-不影响铜管的选型
     */
    //private Double airConditionerRelativeLocation;
    /**
     * 空调内外列表(eg: 业务需要区分 列间和底座)
     */
    private List<AirConditionMaterial> airConditionMaterialList = new ArrayList<>();


    @Data
    @ToString(callSuper = true)
    public static class AirConditionMaterial {
        /**
         * 空调编码
         */
        private String airConditionerCode;
        /**
         * 空调内外机个数(依赖空调选型中的空调外机个数)
         */
        private Integer airConditionerNum;
    }
}
